import { Module } from '@nestjs/common';
import { DayjsModule } from './dayjs/dayjs.module';
import { LodashModule } from './lodash/lodash.module';
import { PrometheusModule } from './prometheus/prometheus.module';
import { RedisModule } from './redis/redis.module';
import { SentryModule } from './sentry/sentry.module';
import { SharpModule } from './sharp/sharp.module';
import { UuidModule } from './uuid/uuid.module';
import { ValidatorModule } from './validator/validator.module';
import { WinstonModule } from './winston/winston.module';

/**
 * 第三方工具库模块 - Common层
 * 基于 NestJS 实现
 * 对应 Java: 工具库封装
 *
 * 包含所有第三方工具库的封装，作为框架基础能力
 */
@Module({
  imports: [
    DayjsModule,
    LodashModule,
    PrometheusModule,
    RedisModule,
    SentryModule,
    SharpModule,
    UuidModule,
    ValidatorModule,
    WinstonModule,
  ],
  exports: [
    DayjsModule,
    LodashModule,
    PrometheusModule,
    RedisModule,
    SentryModule,
    SharpModule,
    UuidModule,
    ValidatorModule,
    WinstonModule,
  ],
})
export class LibrariesModule {}
